<template>
  <div class="wrapper wrapper-content animated fadeInRight v-cloak" v-cloak>
    <div class="row">
      <div class="col-md-12">
        <form @submit.prevent="page(1)" accept-charset="UTF-8" class="form-inline m-b" id="info_search_form" method="post" role="form">
          <div class="form-group">
            <label class="font-noraml">填报时间</label>
            <div class="input-daterange input-group">
              <input autocomplete="off" class="input-sm form-control" name="dateBegin" placeholder="点击输入起始时间" type="text"/>
              <span class="input-group-addon">到</span>
              <input autocomplete="off" class="input-sm form-control" name="dateEnd" placeholder="点击输入截止时间" type="text"/>
            </div>
          </div>
          <div class="form-group">
            <input class="input-sm form-control" name="keyword" placeholder="请输入关键词" type="text">
          </div>
          <vue-area-5
              areaId="areaId"
              areaName="areaName"
              :areaIdVal="staff.dto().areaId"
              :areaNameVal="staff.dto().areaName"
              :areaFixed="staff.dto().areaId"
              :selectBy="staff.dto().areaId"
          ></vue-area-5>
          <div class="form-group">
            <button class="btn btn-sm btn-primary" type="submit">搜索</button>
            <button class="btn btn-sm btn-dafault" type="reset">重置</button>
          </div>
        </form>
        <a @click="edit('a',{id:0});" class="btn btn-xs btn-success" href="javascript:;" v-if='staff.hasPermission("reportTenday:add")'><i class="fa fa-edit"></i> 新增/添加</a>
        <div class="table-responsive table-scrollable">
          <table class="table table-bordered table-striped  table-hover">
            <thead>
            <tr>
              <th style="width:20px;">#</th>
              <th>标题</th>
              <th>发起时间</th>
              <th>提交日期</th>
              <th>当前状态</th>
              <th>操作</th>
            </tr>
            </thead>
            <tbody>
            <tr v-if="result.data.data && result.data.data.length>0" v-for="(item, index) in result.data.data">
              <td>{{ (result.data.pageIndex - 1) * result.data.pageSize + index + 1 }}</td>
              <td>{{ item.title }}</td>
              <td>{{ item.initiateDate }}</td>
              <td>{{ item.reportingDate | date('yyyy-MM-dd') }}</td>
              <td>{{ item.state }}</td>
              <td>
                <a href="javascript:;" v-show='staff.hasPermission("reportTenday:info")' @click="info('i',item)" rel="nofollow" class="label label-info"><i class="fa fa-bookmark"></i> 详情</a>
                <a href="javascript:;" v-show='staff.hasPermission("reportTenday:edit")' @click="edit('e',item)" class="label label-success"><i class="fa fa-edit"></i> 编辑</a>
                <a href="javascript:;" v-show='staff.hasPermission("reportTenday:del")' @click="del(item)" rel="nofollow" class="label label-danger"><i class="fa fa-trash-o"></i> 删除</a>
              </td>
            </tr>
            <tr v-if="result.data.data==null || result.data.data.length==0">
              <td colspan="6">
                <div class="alert"><strong>{{ result | message }}</strong></div>
              </td>
            </tr>
            </tbody>
          </table>
          <div class="b_page" v-html="tagPages"></div>
        </div>
      </div>
    </div>
  </div>
</template>
<script type="text/javascript">
import '@/assets/css/style.css'

import $ from '@/assets/js/jquery-vendor.js'
import 'jquery.cookie'
import axios from 'axios'
import '@/assets/js/datepicker-vendor.js'
import {$storage, axiosContentType, site} from '@/assets/js/boss'
import '@/assets/js/pageTag'
import vueArea5 from '@/components/vue-area-5'
import Swal from 'sweetalert2'

export default {
  components: {
    'vue-area-5': vueArea5
  },
  data() {
    return {
      result: {data: {pageIndex: 1, data: []}, message: ''},
      tagPages: ''
    }
  },
  mounted() {
    let that = window.$vueApp = this;
    document.getElementsByTagName('body')[0].className = 'fixed-sidebar full-height-layout';
    this.staff.init(function () {
      that.page(1);
    });
    $('.input-daterange').datepicker({
      language: 'zh-CN',
      format: 'yyyy-mm-dd',
      keyboardNavigation: !1,
      forceParse: !1,
      autoclose: !0
    });
  },
  watch: {
    // result: function (val) {
    //   this.$nextTick(function () { console.info('变量result渲染完成'); }
    // }
  },
  methods: {
    page(pageIndex) {
      let that = this;
      if (!pageIndex) pageIndex = 1;
      axios.post(site.reportTenday.page + pageIndex
          , $('#info_search_form').serialize()
          , axiosContentType.xWwwFormUrlencoded
      ).then(function (response) {
        const result = response.data;
        if (result.code === 0) {
          that.result = result;
          that.tagPages = that.tag.page(result.data);
        } else {
          Swal.fire(result.message);
        }
      });
    },
    info(title, item) {
      $storage.setItem(site.reportTenday.info, item.id);
      this.lbox.openMyBoxLayer(title, site.reportTenday.view + '/info');
    },
    edit(title, item) {
      $storage.setItem(site.reportTenday.info, item.id);
      this.lbox.openMyBoxLayer(title, site.reportTenday.view + '/edit');
    },
    del(item) {
      let that = this;
      if (confirm('确认删除吗?')) {
        axios.post(site.reportTenday.del + item.id, {}).then(function (response) {
          const result = response.data;
          if (result.code === 0) {
            that.page(that.result.data.pageIndex);
            Swal.fire('删除成功');
          } else {
            Swal.fire(result.message);
          }
        });
      }
    }
  }
}
</script>
